package cn.juque.jdfsystem.service;

import cn.juque.common.base.PageInfo;
import cn.juque.jdfsystem.entity.FileInfo;
import cn.juque.jdfsystem.entity.LogInfo;
import cn.juque.jdfsystem.enums.LogOperateTypeEnum;

import java.util.List;

/**
 * @author JUQUE
 * @version 1.0.0
 * <ul>
 *  <li>simple-generator</li>
 *  <li>文件操作日志</li>
 * </ul>
 * @date 2023-01-10 18:21:44
 **/
public interface ILogInfoService {

    /**
     * 查询
     *
     * @param logInfo logInfo
     * @return List<LogInfo>
     */
    List<LogInfo> listInfoWithoutPage(LogInfo logInfo);

    /**
     * 分页查询
     *
     * @param pageInfo pageInfo
     * @param logInfo  logInfo
     * @return DataGrid<LogInfo>
     */
    List<LogInfo> listInfoWithPage(PageInfo pageInfo, LogInfo logInfo);

    /**
     * 详情
     *
     * @param id 主键
     * @return LogInfo
     */
    LogInfo detail(String id);

    /**
     * 保存
     *
     * @param fileInfo fileInfo
     * @param operateTypeEnum LogOperateTypeEnum
     */
    void saveInfo(FileInfo fileInfo, LogOperateTypeEnum operateTypeEnum);
}
